package com.mar.framecompress.impl.test;

import vnc.server.rfb.cache.CachedEncoderDecoder;

import com.mar.framecompress.CompositeDecoder;
import com.mar.framecompress.CompositeEncoder;
import com.mar.framecompress.impl.RawEncoderDecoder;
import com.mar.framecompress.impl.zlib.ZlibEncoderDecoder;

import junit.framework.Test;
import junit.framework.TestSuite;

public class EncodeDecodeTestSuite {

	
	public static Test suite() {
		TestSuite rootSuite = new TestSuite("Encode Decode Tests"); //$NON-NLS-1$
		
		RawEncoderDecoder rawEncoderDecoder = new RawEncoderDecoder();
		rootSuite.addTest( new  EncodeDecodeTest(rawEncoderDecoder, rawEncoderDecoder).suite() );

		ZlibEncoderDecoder zlibEncoderDecoder = new ZlibEncoderDecoder();
		rootSuite.addTest( new EncodeDecodeTest(zlibEncoderDecoder, zlibEncoderDecoder).suite() );
		
		CachedEncoderDecoder cachedEncoderDecoder = new CachedEncoderDecoder();
		rootSuite.addTest( new EncodeDecodeTest(cachedEncoderDecoder, cachedEncoderDecoder).suite() );

		CompositeEncoder compositeEncoder = new CompositeEncoder( zlibEncoderDecoder,cachedEncoderDecoder , rawEncoderDecoder );
		CompositeDecoder compositeDecoder = new CompositeDecoder( rawEncoderDecoder,cachedEncoderDecoder , zlibEncoderDecoder);
		rootSuite.addTest( new EncodeDecodeTest(compositeEncoder, compositeDecoder).suite() );
		
		return rootSuite;
	}
	
}
